#pragma once
#include "entity.h"
#include "../../SGD_Wrappers/SGD_Math.h"
class CCharacter :
	public CEntity
{
public:
	CCharacter(void);
	virtual ~CCharacter(void);
	void Update(float fElapsedTime);
	void Render();
	virtual void TakeDamage(int nDamage);
	tVector2D KnockBack();
	float GetHealth() {return m_nHealth;}
	void SetHealth(float nHealth) {m_nHealth = nHealth;}
	float GetMaxHealth() {return m_nMaxHealth;}
	void SetMaxHealth(float nMaxHealth) {m_nMaxHealth = nMaxHealth;}
	virtual void HandleEvent(CEvent* pEvent);
	float GetRotation() {return m_fRotation;}
	void SetRotation(float fRotation) {m_fRotation = fRotation;}
	int GetOnTile() {return m_eTile;}
	int GetMoveSpeed() {return m_nMoveSpeed;}

protected:
	enum OnTile { ONTILE_NORMAL, ONTILE_ICE, ONTILE_TAR,
		ONTILE_HEAL};
	OnTile m_eTile; // What Tile what am I on

private:
	float m_nHealth;
	float m_nMaxHealth; // The total amount of Health allowed
	tVector2D m_v2DOnIce; // My sliding vector
	float m_fRotation;
	int m_nMoveSpeed;

};

